package com.ruoyi.restaurant.mapper;

import java.util.List;
import java.util.Map;

import com.ruoyi.restaurant.domain.TestMain;
import com.ruoyi.restaurant.domain.TestChild;

/**
 * 测试主1Mapper接口
 * 
 * @author ruoyi
 * @date 2022-04-18
 */
public interface TestMainMapper 
{
    /**
     * 查询测试主1
     * 
     * @param firstId 测试主1主键
     * @return 测试主1
     */
    public TestMain selectTestMainByFirstId(Integer firstId);

    /**
     * 查询测试主1列表
     * 
     * @param testMain 测试主1
     * @return 测试主1集合
     */
    public List<TestMain> selectTestMainList(TestMain testMain);

    /**
     * 新增测试主1
     * 
     * @param testMain 测试主1
     * @return 结果
     */
    public int insertTestMain(TestMain testMain);

    /**
     * 修改测试主1
     * 
     * @param testMain 测试主1
     * @return 结果
     */
    public int updateTestMain(TestMain testMain);

    /**
     * 删除测试主1
     * 
     * @param firstId 测试主1主键
     * @return 结果
     */
    public int deleteTestMainByFirstId(Integer firstId);

    /**
     * 批量删除测试主1
     * 
     * @param firstIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTestMainByFirstIds(Integer[] firstIds);

    /**
     * 批量删除测试子1
     * 
     * @param firstIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTestChildByFirstIds(Integer[] firstIds);
    
    /**
     * 批量新增测试子1
     * 
     * @param testChildList 测试子1列表
     * @return 结果
     */
    public int batchTestChild(List<TestChild> testChildList);
    

    /**
     * 通过测试主1主键删除测试子1信息
     * 
     * @param firstId 测试主1ID
     * @return 结果
     */
    public int deleteTestChildByFirstId(Integer firstId);

    List<Map<String, Object>> selectListCount(TestMain testMain);
}
